package com.czp.person.mapper;

import java.util.List;

import org.apache.ibatis.session.RowBounds;

import com.czp.person.model.Person;
import com.czp.user.model.User;

public interface IPersonMapper {
	
	/** 
	 * 【描 述】：查询人员信息
	 * @param Person(personName)
	 * @param RowBounds(start, limit)
	 * @return 人员集合
	 * @throws Exception
	 */
	List<Person> getPersonList(Person person, RowBounds bounds) throws Exception;
	
	/** 
	 * 【描 述】：查询人员数量
	 * @param Person(personName)
	 * @return 数量
	 * @throws Exception
	 */
	int getPersonRecords(Person person) throws Exception;
	
	/** 
	 * 【描 述】：添加一条人员信息
	 * @param Person实体
	 * @return 被影响的数量
	 * @throws Exception
	 */
	int insertPerson(Person person) throws Exception;
	
	/** 
	 * 【描 述】：修改一条人员信息
	 * @param Person实体
	 * @return 被影响的数量
	 * @throws Exception
	 */
	int updatePerson(Person person) throws Exception;
	
	/** 
	 * 【描 述】：根据Id删除一条人员信息
	 * @param Person(Id)
	 * @param User(Id)
	 * @return 被影响的数量
	 * @throws Exception
	 */
	int deletePerson(Person person, User userId) throws Exception;
	
	/** 
	 * 【描 述】：根据人员Id查询人员信息
	 * @param personId人员Id
	 * @return 人员信息
	 * @throws Exception
	 */
	List<Person> findPersonById(String personId) throws Exception;
	
	/** 
	 * 【描 述】：自动检索名称(测试方法)
	 * @param 名称
 	 * @return 名称List集合
	 * @throws Exception
	 */
	List<Person> getPersonName(String name) throws Exception;
}
